package com.unitd.app.sso.controller;

import com.unitd.frame.sso.common.helper.SSOHelper;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class LogoutController extends BaseController {
	/*
	 * 
	 * 如果实现 SSOCache 缓存, sso 自动缓存 token 退出只需要 SSOHelper.clearLogin(request, response);
	 * 自动清理 token 缓存信息, 同时各个系统都会自动退出. 建议这么！！退出更优雅...
	 * --------------- 悲剧的开启 ---------------
	 * 如果你不这么干那么您只能挨个不同域退出一遍,最终全站退出.
	 */
	/**
	 * 统一退出,调用对外提供退出的所有接口
	 */
	@RequestMapping("/logout")
	public String logout() {
		SSOHelper.clearLogin(request, response);
		return "logout";
	}

	/**
	 * 退出 SSO 登录
	 */
	@RequestMapping("/logsso")
	public String logsso() {
		/*
		 * SSO 退出,清空退出状态即可
		 * 子系统退出 SSOHelper.logout(request, response);
		 * 注意 sso.properties 包含 退出到SSO 的地址,属性 sso.logout.url 的配置
		 */
		SSOHelper.clearLogin(request, response);
		return redirectTo("/login.html");
	}
}